Method and apparatus for controlling fans in heating, ventilating, and air-conditioning systems

ABSTRACT

Systems, apparatus, and methods of controlling a variable-speed fan of an environmental maintenance module that controls temperatures of a plurality of zones of a building are provided. A first critical zone of the building is identified by analyzing the first zone temperature errors, which are used to determine a final speed setting of the variable-speed fan. Systems, apparatus, and methods of calibrating an environmental maintenance module that controls a temperature of a zone of a building are also provided. A location parameter is calculated for a plurality of zone temperatures, and a scale parameter is computed that quantifies a variation of the zone temperatures relative to a location parameter. A first temperature setpoint for the zone is determined and used in controlling the temperature of the zone.

This application claims the benefit of U.S. Provisional Application No.61/046,348, entitled “METHOD AND APPARATUS FOR CONTROLLING FANS INHEATING, VENTILATING, AND AIR-CONDITIONING SYSTEMS”, filed on Apr. 18,2008, the entirety of which is incorporated by reference herein.

BACKGROUND OF THE INVENTION

The present invention relates to controls for heating, ventilating, andair-conditioning (HVAC) systems, specifically to controlling a fan speedcontrol for HVAC systems and calibrating HVAC systems.

Modern buildings can have complex HVAC systems to control indoortemperature, pressure, ventilation rate, and other variables in a waythat makes efficient use of energy. One way to conserve energy in thesesystems is to use a so-called variable-air-volume design. Key componentsof a variable-air-volume system are a fan, a fan motor, and a fan speedmodulation device. The fan is a prime mover that causes air to move. Themotor, which is typically an alternating current motor for HVAC fans,converts electrical energy to mechanical energy to operate the fan. Afan speed modulation device is typically a variable frequency drive(VFD) for an alternating current motor.

Some VAV systems were originally designed as constant volume HVACsystems, then converted later to VAV operation to conserve energy. Someof these conversions leave the original terminals in place. Constantvolume terminals either do not have dampers or they have mixing dampersthat mix hot air with cold air. Constant volume terminals withoutdampers are called reheat terminals. Constant volume terminals withmixing dampers are called dual-duct terminals. Sometimes the dual-ductterminals are located at the air-handling unit, in which case theair-handling unit is usually referred to as a multi-zone system.

One control strategy for the fan of variable-air-volume systems is toregulate a static pressure in a duct at a point downstream of the fan.In large systems or dual-duct systems, it is common to measure the ductpressure at more than one point and control the minimum reading to asetpoint. This strategy seeks to keep the static pressure at ameasurement point constant at all times. Control strategies based on aconstant static pressure in the duct have been proposed in U.S. Pat. No.4,437,608 to Smith (1984) and U.S. Pat. No. 6,227,961 to Moore et al.(2001). U.S. Pat. No. 4,836,095 to Wright (1989) describes a variant ofthis strategy for systems that have multi-speed fans rather than fans inwhich the speed is continuously variable. A rule of thumb for thisstrategy is to locate the pressure sensor two-thirds of the distancefrom the fan to the end of the duct. A problem with this strategy isthat it is inefficient at part-load conditions, when the flow rate issignificantly lower than a design flow rate, which is the flow rate atwhich the system should operate when the fan is running at full speed.

Another control strategy that overcomes the problem of constant staticpressure control is one in which a static pressure setpoint is resetbased on a position of a terminal damper that is most open. Controlstrategies that reset the static pressure based on the position of theterminal damper that is most open have been proposed in U.S. Pat. No.4,630,670 to Wellman and Clark (1986) and U.S. Pat. No. 5,863,246 toBujak (1999). An objective is to keep this damper nearly open orcompletely open. Doing so reduces throttling losses at part-loadconditions. One problem with resetting static pressure based on theposition of the most-open terminal damper is that it requires that thecontrol system be able to measure the position of every terminal damper.Large systems could have hundreds of terminal dampers. Requiringterminal damper position measurement adds cost to the HVAC system.

Another problem with resetting static pressure based on the position ofthe most-open terminal damper is that it is sensitive to acommunications failure. The terminal dampers are usually located farfrom the fan, so a digital communication network is used to connect theterminal unit control device, which knows the terminal damper position,with the fan control device. A failure in the network connecting thesedevices will cause the control strategy to fail.

Yet another problem with resetting static pressure based on the positionof the most-open terminal damper is that it is sensitive to a terminalunit failure. If one of the terminal units is not working properly, thenthe resetting strategy will not work properly.

Yet another problem with resetting static pressure based on the positionof the most-open terminal damper is that it is sensitive to a designflaw in which one or more terminal dampers is undersized. In this casethe undersized terminal damper will require high pressure to achieve itsrequired flow, causing large throttling losses at the terminal dampersthat are not undersized.

Yet another problem with resetting static pressure based on the positionof the most-open terminal damper is that it is difficult to tune. Themost efficient operating point is when the most-open damper iscompletely open. If the strategy tries to keep the most-open dampercompletely open then the strategy cannot determine if the duct pressureis too low. If the controller tries to keep the most-open damper nearlycompletely open, then when it becomes completely open due to adisturbance in the system, the strategy cannot determine if the pressureis just slightly too low or far too low.

Several variants of static pressure resetting have been used. Forexample, one strategy resets the static pressure based on an averageposition of a set of terminal dampers that are most open. The averagingfeature allows this strategy to reduce the energy consumption at partload conditions even if a small number of terminal units fail or areundersized. However, the strategy is still limited by the need forterminal damper position sensing, is still sensitive to network failure,and is still difficult to tune.

A strategy for modulating the fan of HVAC systems originally designedfor constant volume operation is described in United States patentapplication 20060161306 to Federspiel. This strategy uses discharge airtemperature sensors as feedback for adjusting the fan speed. Thatstrategy attempts to keep the highest discharge air temperature as highas possible or the lowest discharge air temperature as low as possibleso that the zones are heated or cooled with a higher absolutetemperature difference between the discharge and the zone, but atreduced flow.

More complex strategies for controlling fans have been proposed in U.S.Pat. Nos. 5,540,619 and 5,573,181, both to Ahmed (1996). Theseinventions require the measurement of flow or pressure in all branchesdownstream of the fan in addition to measurement of the position of eachterminal damper. Consequently, they have all the problems of the staticpressure resetting inventions described above.

Accordingly, a need exists for a fan control strategy that can improvethe part-load efficiency of fans in variable-air-volume systems withoutrequiring the added cost of position measurements, without beingsensitive to communications system failure, and being easy to calibrate.

BRIEF SUMMARY

Embodiments of the invention provide systems and methods for providing acontrolling of one or more fans of a variable-air-volume heating,ventilating, and air-conditioning system (VAV-HVAC). The VAV-HVAC systemcomprises a fan, a fan modulating device, a plurality of zonetemperature sensors, and a controller coupled to the fan modulatingdevice. The controller can cause the fan to change speed if thetemperature readings are within or outside of bounds.

For example, high and low temperature setpoints, along with temperaturesfrom different zones in a building are received from thermostats andsensors. Errors are then determined from various temperature readingsand desired setpoints. The controller determines an appropriate fanspeed based on the errors and learned commands based on previous use.The controller can also use different calibration modes to calibrate thesystem.

One embodiment of the invention provides a method of controlling avariable-speed fan of an environmental maintenance module that controlstemperatures of a plurality of zones of a building. For each zone a zonetemperature is received corresponding to that zone. A first zonetemperature error is computed by calculating a difference between thatzone temperature and a first setpoint of that zone. A first criticalzone is identified by analyzing the first zone temperature errors. Thefirst zone temperature error of the critical zone is used to determine afinal speed setting of the variable-speed fan. In many embodiments, aninformation storage medium is provided having a plurality ofinstructions adapted to direct at least one processor to perform themethod of controlling a variable-speed fan of an environmentalmaintenance module that controls temperatures of a plurality of zones ofa building. In many embodiments, the information storage medium is partof a HVAC system.

Another embodiment of the invention provides a method of calibrating anenvironmental maintenance module that controls a temperature of a zoneof a building. Over a time period, a plurality of temperatures of thezone are received, each zone temperature being at a different timewithin the time period. A location parameter is calculated for the zonetemperatures. A scale parameter is computed that quantifies a variationof the zone temperatures relative to the location parameter. A firsttemperature setpoint is determined for the zone, wherein theenvironmental maintenance module uses the first temperature setpoint incontrolling the temperature of the zone. In many embodiments, aninformation storage medium is provided having a plurality ofinstructions adapted to direct at least one processor to perform themethod of calibrating an environmental maintenance module that controlsa temperature of a zone of a building. In many embodiments, theinformation storage medium is part of a HVAC system.

Yet, another embodiment of the invention provides a method ofcalibrating an environmental maintenance module that controls atemperature of a zone of a building. A database is periodically accessedwhich includes prior fan speed and zone temperature information over aperiod of time. It is determined whether fan speed was at or above apredetermined level over an interval of time. Current low and hightemperature setpoints are set according to the determination whether fanspeed was at or above a predetermined level over an interval of time,wherein the environmental maintenance module uses the low and hightemperature setpoints in controlling the temperature of the zone. Inmany embodiments, an information storage medium is provided having aplurality of instructions adapted to direct at least one processor toperform the method of calibrating an environmental maintenance modulethat controls a temperature of a zone of a building. In manyembodiments, the information storage medium is part of a HVAC system.

Other embodiments of the invention are directed to systems and computerreadable media associated with methods described herein. For example, acomputer program product comprising a computer readable medium encodedwith a plurality of instructions for controlling a processor to performa method as described herein is provided.

A better understanding of the nature and advantages of the presentinvention may be gained with reference to the following detaileddescription and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a schematic diagram of a portion of a single-duct heating,ventilating, and air-conditioning (HVAC) system made to run at constantvolume, according to an embodiment of the present invention.

FIG. 1B is a schematic diagram of a portion of a single-ductvariable-air-volume (VAV) heating, ventilating, and air-conditioning(HVAC) system, according to an embodiment of the present invention.

FIG. 2A is a schematic diagram of a portion of a dual-duct HVAC systemwith an interlocked damper, according to an embodiment of the presentinvention.

FIG. 2B is a schematic diagram of a portion of a dual-duct HVAC systemwith separately controlled dampers, according to an embodiment of thepresent invention.

FIG. 3 is a flow diagram of a method for controlling a variable-speedfan of an environmental maintenance module that controls temperatures ofa plurality of zones of a building, according to an embodiment of thepresent invention.

FIG. 4 is a flow diagram of a setpoint update process, according to anembodiment of the present invention.

FIG. 5 is a state transition diagram of a control algorithm, accordingto an embodiment of the present invention.

FIG. 6 is a block diagram of an exemplary computer apparatus usable withsystems and methods, according to an embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION I. Systems Overview

FIG. 1A shows a schematic diagram of a single-duct constant volumesystem 5, according to an embodiment of the invention. Single-ductsystems 5 include a cooling coil 20, a supply fan 25, supply air ducts30, re-heat coils 35, discharge air ducts 40, and discharge airdiffusers 45. Cooling coil 20 is a heat exchanger that carries a coolingfluid such as chilled water or a chilled water and glycol solution.Cooling coil 20 is mounted in supply air duct 30. Supply fan 25 could bea centrifugal fan or an axial fan. Supply fan 25 is mounted in supplyduct 30. A duct can be an elongate sheet metal structure with round orrectangular cross-section designed to transport air. Supply duct 30contains branches that lead to re-heat coils 35. Re-heat coil 35 is aheat exchanger that carries heating fluid supplied by a hot water supplypipe 50. Re-heat coil 35 is mounted between a branch of supply duct 30and discharge air duct 40. Discharge air duct 40 is a duct betweenreheat coil 35 and diffuser 45. A thermostat 55 in the occupied space ofa particular zone adjusts a re-heat valve 60, which modulates the flowof heating fluid through re-heat coil 35. Re-heat valve 35 is connectedto hot water supply pipe 50 and re-heat coil 35.

FIG. 1B is a schematic diagram of a portion of a single-duct VAV-HVACsystem 10, according to an embodiment of the present invention. FIG. 1Bis similar to the system shown in FIG. 1A, but further includes dampers82 that regulate the flow of air.

FIG. 2A shows a schematic diagram of a dual-duct system 15 according toan embodiment of the invention. Dual-duct systems 15 include supply fan25, supply duct 30, cooling coil 20, a heating coil 65, a cold air duct70, a hot air duct 75, dual duct air terminals 80, discharge air ducts40, and diffusers 45. Supply fan 25 is mounted in supply duct 30. Supplyduct 30 is connected to cold air duct 70 and hot air duct 75. Coolingcoil 20 is mounted at the beginning of cold air duct 70. Heating coil 65is mounted at the beginning of hot air duct 75. Cold air duct 70 hasbranches that connect to air terminals 80. Hot air duct 75 also hasbranches that connect to air terminals 80. Air terminals contain mixingdampers 85 that mix hot air from hot air duct 75 with cold air from coldair duct 70. Mixing dampers 85 are assemblies consisting of movableblades mounted on axles in a frame. Thermostat 55 adjusts actuator 90,which is connected to mixing dampers 85.

FIG. 2B is a schematic diagram of a portion of a dual-duct HVAC,according to an embodiment of the present invention. The system shown inFIG. 2B is similar to the system shown in FIG. 2A, but further includesseparately controlled dampers 87.

It should be noted that the systems shown in FIGS. 1A, 1B, 1C, and 1D,also include a one or more controllers/computers for operating therespective systems. The one or more controllers can be an electronicdevice, e.g., an integrated computer, general computer, or a servercomputer. The one or more controllers generally include at least oneprocessor 673 coupled to a communications bus 675; memory coupled to thecommunications bus 672; and an input/output controller 671 coupled tothe communications bus, for example, as shown in FIG. 6. The memory 672can include stored instructions for execution on the processor regardingoperations of the above systems. The instructions can regard any of themethods, processes, operating modes, and algorithms disclosed herein.

II. Adaptive Bounded Controls Sequence (ABCS)

FIG. 3 is a data flow diagram of a method 300 of controlling avariable-speed fan according to an Adaptive Bounded Controls Sequence(ABCS) according to an embodiment of the invention. The method 300 showncan be used, for example, in conjunction with any of the systems shownin FIGS. 1A, 1B, 2A, and 2B.

ABCS can be applicable to constant volume air-handling units (bothreheat and dual-duct) which have variable speed fan drives. ABCS canalso be applicable to variable air volume (VAV) system, both reheat anddual-duct. Single-duct air-handling units make cold air that is reheatedby the terminal units. Single-duct VAV systems have terminal dampersthat reduce the flow to each zone so that the flow rate to each zone(when re-heating occurs) is less that the flow to each zone for asingle-duct constant volume system. Dual duct air-handling units makecold air and hot air, and mix the two at the terminal units. Withdual-duct constant volume air-handling units, the airflow rate to eachzone is nominally constant; the mixing ratio is adjusted by the zonethermostat to keep the zone temperature close to a setpoint. Withdual-duct VAV air-handling units, the hot airflow rate to each zone isadjusted when heating is needed, the cold airflow rate to each zone isadjusted when cooling is needed, and there is mixing of hot and cold airwhen the load is low to ensure adequate ventilation.

Air-handling units can have one or more supply fans, which can becentrifugal or axial air-moving devices driven by an electric motor.Air-handling units can also have one or more cooling coils, which can beheat exchangers designed to cool air with a cooling fluid, which istypically water, and one or more heating coils, which can be heatexchangers designed to heat air with a heating fluid that is typicallyhot water or steam. Cooling coils are located in a supply air duct ifthe system is a single-duct reheat type, or in a cold air duct(sometimes called a cold deck) if the air-handling unit is a dual-ducttype. Heating coils are located in a supply air duct if the air-handlingunit is a single-duct reheat type, or in a hot air duct (sometimescalled a hot deck) if the air-handling unit is a dual-duct type.

Zone terminal units for a single-duct reheat system can include reheatcoils, which are heat exchangers that use hot water, steam, orelectricity to heat air. The reheat coil valve is modulated by the zonethermostat to keep the zone temperature close to a setpoint. Zoneterminals for single-duct VAV air-handling units have a damper and areheat coil. The damper and the reheat coil are modulated in sequence.The damper is modulated when cooling is needed, then either held at afixed position or modulated to hold a constant flow as reheat is needed.Zone terminals for dual-duct constant volume air-handling units comprisemixing dampers that are interlocked so that one actuator is effected bythe thermostat to adjust the mixing ratio. Zone terminals for dual-ductVAV air-handling units consist of mixing dampers that are notinterlocked. Two actuators, one for each damper, are effected by thethermostat in sequence to keep the zone air temperature close to asetpoint.

All terminal units can discharge air into a network of discharge airducts that are terminated in diffusers. The diffusers mix the hot orcold discharge air with zone air to avoid stratification of airtemperature in the zone.

ABCS can use a wireless zone temperature sensors for feedback. Thewireless zone temperature sensors may be installed near a thermostat orin some other location in a zone. ABCS optionally uses wirelesstemperature sensors to measure discharge air temperature, supply airtemperature (single-duct) or cold deck temperature (dual-duct), andheating hot water (single-duct) or hot deck temperature (dual-duct).Heating hot water temperature can be measured by attaching a temperatureprobe to a heating hot water supply pipe. The wireless sensor modulesfor measuring discharge air temperature may be duct-mount devices withan external duct insertion probe or ceiling-mounted devices with anexternal probe that extends into a diffuser. Supply air temperature andcold deck temperature are also referred to as cold source temperature. Aduct-mount wireless sensor module with an external duct insertion probeis used to measure cold source temperature. Hot deck temperature andheating hot water temperature are referred to as hot source temperature.Hot deck temperature is measured with a duct-mount wireless sensormodule with an external duct insertion probe. Heating hot watertemperature is measured with an wireless sensor module that has anexternal strap-on probe for the heating hot water pipe, or a wellinsertion probe. ABCS has one or more wireless control modules thatreceive speed commands over the air and transmit them to a variablespeed drive of a fan motor.

In use, ABCS can reduce the fan speed so that a critical zonetemperature is held close to a high-temperature setpoint or a criticalzone temperature is held close to a low-temperature setpoint. In normaloperation mode, ABCS uses a feedback control as shown in FIG. 3. Thecommand is a setting of the VSD and the feedback is the temperatures ofthe zones. ABCS can be used on any of the systems shown in FIGS. 1A, 1B,2A, and 2B.

In step 200, zone temperatures are received, from each zone in acorresponding system. For example, from the wireless zone temperaturesensors 120 as shown in FIGS. 1A, 1B, 2A, and 2B.

In step 205, high-temperature setpoints are received, from a database orother memory, regarding each zone in the corresponding system. Forexample, from the wireless thermostats 55 as shown in FIGS. 1A, 1B, 2A,and 2B. In step 210, low-temperature setpoints are received. Forexample, from the wireless thermostats 55 as shown in FIGS. 1A, 1B, 2A,and 2B. Next zone temperature errors are computed. There are two typesof zone temperature errors: high-temperature errors and low-temperatureerrors

In step 215, high-temperature errors are computed, for each zone in thecorresponding system. A high-temperature error is the difference betweena zone's high-temperature setpoint and a temperature recorded by itscorresponding wireless temperature sensor 120. Thus, zone temperaturesare subtracted from high-temperature setpoints to determinehigh-temperature errors.

In step 220, low-temperature errors are computed, for each zone in thecorresponding system. The low-temperature errors are the differencesbetween the low-temperature setpoints and the associated zonetemperatures. Thus, zone temperatures are subtracted fromlow-temperature setpoints to determine low-temperature errors.

In step 225, the Nth lowest high-temperature error is determined,regarding a critical high-temperature zone. A critical high-temperaturezone is defined by the difference between a zone's high-temperaturesetpoint and a temperature recorded by its corresponding wirelesstemperature sensor 120 (referred to as a high-temperature error), andits rank with respect to other high-temperature errors. The criticalhigh-temperature zone may be the zone with the lowest high-temperatureerror, or the second-lowest, or the third-lowest, e.g., Nth highest (N=2or 3 or 4 . . . ). The critical high-temperature zone may be the zonewith the highest temperature or the zone which exceeds it's upper limitthe most. It is sometimes useful to avoid using the lowest, because thezone with the lowest high-temperature error may have a functionalproblem which is making it the lowest. If all high-temperature setpointsare the same, then the zone with the lowest high-temperature error hasthe highest zone temperature. In many embodiments, unoccupied zones canbe ignored for determining the Nth lowest high-temperature error. Inmany embodiments, the critical high-temperature zone is determined bycomputing an average, or the median, of a plurality of high-temperatureerrors or low-temperature errors. For example, the top three lowesthigh-temperature errors may be averaged to compute the criticalhigh-temperature zone.

In step 230, the Mth highest low-temperature error is determined,regarding a critical low-temperature zone. The low-temperature errorsare the differences between the low-temperature setpoints and theassociated zone temperatures. The critical low-temperature zone may bethe zone with the highest low-temperature error, the second-highestlow-temperature error, the third-highest low-temperature error, etc. Thecritical high-temperature zone may be the zone with the lowesttemperature or the zone which exceeds it's lower limit the most. If allof the low-temperature setpoints are the same, then the zone with thehighest low-temperature error has the lowest temperature. In manyembodiments, unoccupied zones can be ignored for determining the Mthlowest low-temperature error.

In step 235, a high-temperature proportional-integral-derivative (PID)control object determines a command (e.g., a estimated high-temp speedsetting for supply fan 25). In many embodiments, the PID objectcalculates three separate parameters: the proportional, the integral andderivative values. The proportional value determines the reaction to thecurrent error, the integral determines the reaction based on the sum ofpast errors, and the derivative determines the reaction to the rate atwhich the error has been changing. The weighted sum of these threeactions is used to determine an estimated high-temp speed setting. Theestimated high-temp speed setting is partially based on the Nth lowesthigh temperature error of the high-temperature critical zone. Thehigh-temperature PID control object can also take input from learnedprevious commands, as discussed herein.

In step 240, a low-temperature proportional-integral-derivative (PID)control object determines a command (estimated low-temp speed settingfor supply fan 25). The estimated low-temp speed setting is partiallybased on the Mth highest low temperature error, which defines thelow-temperature critical zone. The low-temperature PID control objectcan also take input from learned previous commands. In many embodiments,the critical low-temperature zone is determined by computing an average,or the median, of a plurality of low-temperature errors. For example,the three highest low-temperature errors may be averaged to compute thecritical low-temperature zone.

In step 234, the PID control objects of ABCS accept learned commands asinputs. Learned commands are learned from commands computed on previousdays. Learning from the previous commands is performed over previoustime intervals. The time intervals are generally longer than the periodsbetween ABCS updates (e.g., 15 minutes), and include day types thatcorrespond to days of the week and holidays, or weekdays, weekends, andholidays. After each interval passes, the learned command for thatinterval is updated as follows:LearnedCommand(i,n,d)=(1−p/P)LearnedCommand(i−1,n,d)+p/P C(i,n,d)Where i is the index for the current learned command (a time index), nis an index for the nth interval in a frame of intervals (e.g.,15-minute intervals in a day), d is the index for the interval type(e.g., day of week), p is the period between like nth indexes (one weekif each day type is a day of the week, one day if each day type is thesame), P is a user-configurable learning time constant (typically threeweeks), and C(i,n,d) is the most recent command corresponding to indexi, interval n, and interval type d. When the Learned Command interval islonger than t, the update period for ABCS (which is typical), thelearned commands passed to PID objects are computed by interpolation.

It should be noted that the high and low-temperature PID control objectscan have anti-windup features for their integrators. Anti-windupfeatures prevent the integrator from integrating if the output of thePID object is at its maximum or minimum.

In step 245, if cooling is disabled, the high-temperature fan settingcommand output is a predetermined minimum high command output, otherwiseit is the command output of the high-temperature PID control object fromstep 235. The minimum high command output is a predetermined fan speednecessary to ensure adequate ventilation. The temperature readings fromthe cold source sensor 246 can be used to determine whether or notcooling is disabled. Other mechanisms may be available for determiningwhether or not cooling is disabled, such as time of day if cooling isknown to be disabled at certain times of the day.

In step 250, if the heating is disabled, the low-temperature fan settingcommand output is a minimum low command output, otherwise it is thecommand output of the low-temperature PID control object from step 240.The minimum low command output is a predetermined fan speed necessary toensure adequate heating. The temperature readings from the hot sourcesensor 251 can be used to determine whether or not heating is disabled.Other mechanisms may be available for determining whether or not heatingis disabled, such as time of day if cooling is known to be disabled atcertain times of the day.

In step 260, the command to the variable speed drive is set to themaximum of the high-temperature command output and the low-temperaturecommand output, as determined in steps 245 and 250, respectively. Instep 265, the high temperature command output and low-temperaturecommand output are sent to the VSD 105.

In many embodiments, temperature settings via the thermostat in eachzone are not used. If the thermostat setting is high, then the locationparameter in the calibration will be high; if the thermostat setting islow, then the location parameter will be low.

III. Calibration

A. Automatic Calibration Mode

FIG. 4 shows a method for switching to an automatic calibration mode,according to one embodiment of the invention. ABCS can switch from anormal mode (e.g. as shown in FIG. 3) to an automatic calibration modewhen its output has been 100%, e.g., fan operating at maximum speed, forat least a user-configurable period of time, for example, 30 minutes. Inautomatic calibration mode, ABCS will continue to execute the feedbackloop calculations described above, and it will update thehigh-temperature and low-temperature setpoints. The setpoints areupdated in steps 270 and 275 by recursively computing statistics foreach zone temperature: mean and standard deviation, respectively. Themean zone temperature is computed as follows:ZoneMean(k,j)=(1−t/T)ZoneMean(k−1,j)+t/T ZoneTemperature(k,j)  (1)where k is a time index, j is an index for the jth zone, t is the timebetween updates, and T is a time constant for learning the mean. Thestandard deviation is computed recursively from the mean absolutedeviation from the mean:ZoneMAD(k,j)=(1−t/T)ZoneMAD(k−1,j)+t/Tabs(ZoneTemp(k,j)−ZoneMean(k,j))  (2)ZoneStd(k,j)=sqrt(pi/2)*ZoneMAD(k,j)  (3)

The mean is an example of a location parameter. Another example of alocation parameter is the median. The standard deviation is an exampleof a scale parameter. The scale parameter quantifies a variation of thezone temperatures relative to the location parameter. Another example ofa scale parameter is the mean absolute deviation from a locationparameter. Other location parameters and scale parameters, known to oneskilled in the art, may be used.

The high temperature setpoints are computed as follows in step 280:HighSP(j)=ZoneMean(j)+max(LowerLimit,min(UpperLimit,Z*ZoneStd))  (4)And the low-temperature setpoints are computed as follows in step 285:LowSP(j)=ZoneMean(j)−max(LowerLimit,min(UpperLimit,Z*ZoneStd))  (5)where Z user-configurable parameter that determines how far thesetpoints deviate from the average temperature relative to thehistorical variation of the temperature. Z can be, for example, 1.65. Ifthe temperature variation follows a normal distribution, then thelow-temperature and high-temperature setpoints will be at the 5% and 95%levels of the normal distribution.

Equation 3 is the mean absolute deviation around the mean. Thesqrt(pi/2) is the theoretical relationship between the mean absolutedeviation and standard deviation for a normal (Gaussian) distribution.In many embodiments, the mean absolute deviation is robust compared tothe typical mean squared calculation for the standard deviation.Converting the mean absolute deviation to standard deviation withsqrt(pi/2) allows probabilities associated with the standard deviation(which are well-known and readily available in any statistics book) tobe used to set the value of Z in Equations 4 and 5.

ABCS can transition back from automatic calibration mode to normal modewhen the computed command to the variable speed drive becomes less than100%.

During calibration or ABCS, the high-temperature setpoints may be raised(and/or the low-temperature setpoints lowered) in response to a “demandresponse” event message. A demand response event message occurs when theutility or grid operator determines that the grid demand (eithersystem-wide or locally) is near grid capacity. The demand responsemessage is dispatched through a number of means so that end users willlower their demand for electricity.

B. Scheduled Mode

In many embodiments, ABCS transitions from normal mode to timedcalibration mode when instructed to do so by the operator or by ascheduled event. In timed calibration mode, ABCS first starts a timerthat determines how long ABCS will remain in timed calibration mode. Thetimer length is user-configurable. Then ABCS sets the fan speed to 100%.In timed calibration mode, ABCS updates the mean and standard deviationas in automatic calibration mode, but it does not need to update thesetpoints until it exits timed calibration mode because the setpointsmay not used in timed calibration mode. ABCS switches from timedcalibration mode to normal mode when the timer expires.

C. Batch Mode

In many embodiments, ABCS periodically (e.g., once per day, per week, orper month) transitions to batch mode. In batch mode, ABCS utilizes adatabase of prior recorded zone setting, fan speed, and temperatureinformation. In batch mode, ABCS can determine from the databasecontiguous time intervals in a calibration period (e.g., week, twoweeks, month) when the fan speed was (nearly) 100%, and determine themaximum (or nearly maximum) and minimum (or nearly minimum) temperaturefor each zone temperature when the fan speed was (nearly) 100%. The ABCScan then set the low temperature setpoint for each zone to its (nearly)minimum value calculated, and set the high temperature setpoint for eachzone to its (nearly) maximum value. In many embodiments, if there is nocontiguous time interval in the calibration period when the fan speedwas (nearly) 100%, ABCS can then raise the low setpoints by X % of thedifference between the high and low setpoints, and lower the highsetpoints by X % of the difference between the high and low setpoints,where X is a user-selectable parameter between 0 and 50 (e.g., 10). Inmany embodiments, if there is no contiguous time interval in thecalibration period when the fan speed was (nearly) 100%, ABCS canschedule to fan to run at 100% for a predetermined about of time, sothat when batch mode is run in the future ABCS can compute low and hightemperature setpoints.

D. Transitions Between the Modes

FIG. 5 is a state transition diagram of the control algorithm, accordingto an embodiment of the present invention. ABCS includes the calibrationoperating modes as disclosed herein, which are normal operation 125,automatic calibration mode 140, and manual/scheduled calibration mode150. In normal operation 125, the control algorithm may be inputted withor retrieve setpoints 130 and execute a control loop 135. As describedherein, the normal operation 125 may switch to automatic calibrationmode 140, when an auto calibration event 175 occurs, e.g., the fanoutput has been 100% for a predetermined amount of time. The automaticcalibration mode 140 may switch to normal operation mode 125 when anauto calibration event 185 ends, e.g., the fan output becomes less than100%. In the automatic calibration mode 140, the control algorithmexecutes a control loop 135 and updates statistics and setpoints 145.The automatic calibration mode 140 may switch to the scheduledcalibration mode 150 when a calibration event 185 occurs. In thescheduled calibration mode 150, the control algorithm may be inputtedwith or retrieve start timer 155 and fan speed 160 settings, and updatestatistics 165 and update setpoints 170. The scheduled calibration mode150 may switch to the normal operation mode 125 when a timed calibrationevent ends 190, e.g., when a timer stops. The normal operation mode 125may switch to the scheduled calibration mode 150 when a calibrationevent 185 ends.

Any systems shown in FIGS. 1A, 1B, 2A, and 2B implementing methods,processes, operating modes, and algorithms disclosed herein, may utilizeany suitable number of subsystems. Examples of such subsystems orcomponents are shown in FIG. 6. The subsystems shown in FIG. 6 areinterconnected via a system bus 675. Additional subsystems such as aprinter 674, keyboard 678, fixed disk 679, monitor 676, which is coupledto display adapter 682, and others are shown. Peripherals andinput/output (I/O) devices, which couple to I/O controller 671, can beconnected to the computer system by any number of means known in theart, such as serial port 677. For example, serial port 677 or externalinterface 681 can be used to connect the computer apparatus to a widearea network such as the Internet, a mouse input device, or a scanner.The interconnection via system bus allows the central processor 673 tocommunicate with each subsystem and to control the execution ofinstructions from system memory 672 or the fixed disk 679, as well asthe exchange of information between subsystems. The system memory 672and/or the fixed disk 679 may embody a computer readable medium.

The specific details of the specific aspects of the present inventionmay be combined in any suitable manner without departing from the spiritand scope of embodiments of the invention. However, other embodiments ofthe invention may be directed to specific embodiments relating to eachindividual aspects, or specific combinations of these individualaspects.

It should be understood that the present invention as described abovecan be implemented in the form of control logic using hardware and/orusing computer software in a modular or integrated manner. Based on thedisclosure and teachings provided herein, a person of ordinary skill inthe art will know and appreciate other ways and/or methods to implementthe present invention using hardware and a combination of hardware andsoftware

Any of the methods described in this application, may be implemented assoftware code to be executed by a processor using any suitable computerlanguage such as, for example, Java, C++ or Perl using, for example,conventional or object-oriented techniques. Computer programsincorporating features of the present invention may be encoded onvarious computer readable media for storage and/or transmission;suitable media include magnetic disk or tape, optical storage media suchas compact disk (CD) or DVD (digital versatile disk), flash memory, andthe like. The computer readable medium may be any combination of suchstorage or transmission devices.

Such programs may also be encoded and transmitted using carrier signalsadapted for transmission via wired, optical, and/or wireless networksconforming to a variety of protocols, including the Internet. As such, acomputer readable medium according to an embodiment of the presentinvention may be created using a data signal encoded with such programs.Computer readable media encoded with the program code may be packagedwith a compatible device or provided separately. Any such computerreadable medium may reside on or within a single computer programproduct (e.g., a hard drive or an entire computer system), and may bepresent on or within different computer program products within a systemor network.

The above description of exemplary embodiments of the invention has beenpresented for the purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdescribed, and many modifications and variations are possible in lightof the teaching above. The embodiments were chosen and described inorder to best explain the principles of the invention and its practicalapplications to thereby enable others skilled in the art to best utilizethe invention in various embodiments and with various modifications asare suited to the particular use contemplated.

1. A method of controlling a variable-speed fan of an environmentalmaintenance module that controls temperatures of a plurality of zones ofa building, the method comprising: (a) for each zone: receiving a zonetemperature corresponding to that zone; and computing a first zonetemperature error by calculating a difference between that zonetemperature and a first setpoint of that zone; (b) identifying a firstcritical zone by analyzing the first zone temperature errors; (c) usingthe first zone temperature error of the critical zone to determine afinal speed setting, wherein using the zone temperature error of thecritical zone to determine a speed setting of the variable-speed fanincludes: inputting the first zone temperature error of the firstcritical zone to a first proportional-integral-derivative (PID)calculator; and calculating a first estimated speed setting of thevariable-speed fan based on the first zone temperature error and atleast one of a previous estimated speed setting and/or a previous firstzone temperature error of the variable-speed fan; and (d) controlling,with a controller, the variable-speed fan based on the final speedsetting.
 2. The method of claim 1, further comprising: repeating (a)-(c)at periodic intervals.
 3. The method of claim 1, wherein the firstestimated speed setting is used as the final speed setting.
 4. Themethod of claim 1, wherein the first estimated setting is below aminimum setting, and the minimum setting in is used to determine thefinal speed setting.
 5. The method of claim 4, wherein the minimumsetting is used as the final speed setting.
 6. The method of claim 1,further comprising: receiving a learned behavior coefficient at thefirst PID; and using the learned behavior coefficient to calculate thefirst estimated speed setting.
 7. The method of claim 6, wherein thelearned behavior coefficient corresponds to a same interval.
 8. Themethod of claim 1, wherein the first zone setpoint of each zone is ahigh temperature setpoint.
 9. The method of claim 1, wherein the firstzone setpoint of each zone is a low temperature setpoint, and where inthe second setpoint of each zone is a high temperature setpoint.
 10. Themethod of claim 1, further comprising: for each zone: computing a secondzone temperature error by calculating a difference between that zonetemperature and a second setpoint of that zone; identifying a secondcritical zone by analyzing the second zone temperature errors; and usingthe second zone temperature error of the second critical zone todetermine a second speed setting of the variable-speed fan.
 11. Themethod of claim 10, further comprising: calculating a first estimatedspeed setting of the variable-speed fan based on the first zonetemperature error; and calculating a second estimated speed setting ofthe variable-speed fan based on the second zone temperature error,wherein the second estimated speed setting is the second speed setting.12. The method of claim 11, wherein the final speed setting is maximumof the first estimated speed setting and the second estimated speedsetting.
 13. The method of claim 11, wherein the final speed setting isa maximum of the first estimated speed setting, and a minimum of thesecond estimated speed setting.
 14. The method of claim 1, furthercomprising: receiving a temperature measurement from at least one sensorof each zone; and using the temperature measurement to determine thezone temperature of the corresponding zone.
 15. The method of claim 1,further comprising: raising the first setpoint of each zone in responseto a demand response event message.
 16. The method of claim 14, furthercomprising: receiving a temperature measurement from a plurality ofsensors of each zone; and calculating the zone temperature from anaverage of the temperature measurements from the sensors.
 17. The methodof claim 1, wherein the first critical zone is identified by determiningan average or median of at least a portion the first zone temperatureerrors.
 18. A method of calibrating an environmental maintenance modulethat controls a temperature of a zone of a building, the methodcomprising: (a) receiving, over a time period, a plurality oftemperatures of the zone, each zone temperature being at a differenttime within the time period; (b) calculating a location parameter forthe zone temperatures; (c) computing a scale parameter that quantifies avariation of the zone temperatures relative to the location parameter;(d) determining a first temperature setpoint for the zone, wherein theenvironmental maintenance module uses the first temperature setpoint incontrolling the temperature of the zone, wherein determining a firsttemperature setpoint for the zone includes: calculating a minimum valuebetween an upper limit and a function of the scale function; calculatinga maximum value between the minimum value and a lower limit; and addingthe maximum value to the location.
 19. The method of claim 18, wherein(b)-(d) are repeated when a new temperature of the zone is received, andwherein (b)-(d) use a fixed number of the most recent temperatures. 20.The method of claim 18, further comprising: determining a secondtemperature setpoint for the zone, wherein the environmental maintenancemodule uses the second temperature setpoint in controlling thetemperature of the zone.
 21. The method of claim 18, wherein a commanddetermines a speed setting of a variable-speed fan of the environmentalmaintenance module, wherein the calibration is initiated when thecommand is computed to run the variable-speed fan at a specific capacityfor a set period of time.
 22. The method of claim 18, wherein thelocation parameter is a mean or a median of the zone temperatures. 23.An HVAC system, comprising: an environmental maintenance moduleincluding at least one variable-speed fan operatively coupled to aplurality of zones of a building; a controller operatively coupled tothe environmental maintenance module for controlling the variable-speedfan, the controller including at least one processor configured to: foreach zone: receive a zone temperature corresponding to that zone; andcompute a first zone temperature error by calculating a differencebetween that zone temperature and a first setpoint of that zone andcomputing a second zone temperature error by calculating a differencebetween that zone temperature and a second setpoint of that zone;identify a first critical zone by analyzing the first zone temperatureerrors; and identifying a second critical zone by analyzing the secondzone temperature errors; and using the second zone temperature error ofthe second critical zone to determine a second speed setting of thevariable-speed fan; use the first zone temperature error of the criticalzone to determine a final speed setting of the variable-speed fan. 24.The HVAC system of claim 23, wherein the at least one processor isconfigured to: Calculate a first estimated speed setting of thevariable-speed fan based on the first zone temperature error; andCalculate a second estimated speed setting of the variable-speed fanbased on the second zone temperature error, wherein the second estimatedspeed setting is the second speed setting.
 25. The HVAC system of claim24, wherein the final speed setting is maximum of the first estimatedspeed setting and the second estimated speed setting.
 26. The HVACsystem of claim 24, wherein the final speed setting is a maximum of thefirst estimated speed setting, and a minimum of the second estimatedspeed setting.
 27. An HVAC system, comprising: an environmentalmaintenance module configured to control a temperature of a zone of abuilding; a controller operatively coupled to the environmentalmaintenance module for calibrating the environmental maintenance module,the controller including at least one processor configured to: (a)receive, over a time period, a plurality of temperatures of the zone,each zone temperature being at a different time within the time period;(b) calculate a location parameter for the zone temperatures; (c)compute a scale parameter that quantifies a variation of the zonetemperatures relative to the location parameter; (d) determine a firsttemperature setpoint for the zone, wherein the environmental maintenancemodule uses the first temperature setpoint in controlling thetemperature of the zone, wherein determining a first temperaturesetpoint for the zone includes: calculating a minimum value between anupper limit and a function of the scale function; calculating a maximumvalue between the minimum value and a lower limit; and adding themaximum value to the location parameter.
 28. A method of calibrating anenvironmental maintenance module that controls a temperature of a zoneof a building, the method comprising: (a) periodically accessing adatabase which includes prior fan speed and zone temperature informationover a plurality of time intervals a period of time; (b) determiningwhether the fan speed was at or above a predetermined level over one ofthe time intervals; (c) setting current low and high temperaturesetpoints according to the determination whether the fan speed was at orabove a predetermined level over one of the time intervals, wherein theenvironmental maintenance module uses the low and high temperaturesetpoints in controlling the temperature of the zone, wherein the fanspeed is determined to be at or above the predetermined level over theinterval of time, and further comprising determining a first and secondtemperature for the zone when the fan speed was at or above thepredetermined level, and wherein the current low and high temperaturesetpoints are set according to the first and second temperatures,respectively.
 29. The method of claim 28, wherein the predeterminedlevel is 100%.
 30. The method of claim 28, wherein the first and secondtemperature are nearly at minimum and maximum temperatures of the zone,respectively.
 31. An HVAC system, comprising: an environmentalmaintenance module configured to control a temperature of a zone of abuilding; a controller operatively coupled to the environmentalmaintenance module for calibrating the environmental maintenance module,the controller including at least one processor configured to: (a)periodically access a database which includes prior values for a fanspeed and zone temperature information over a plurality of timeintervals in period of time; (b) determine whether the fan speed was ator above a predetermined level over any time interval in the period; (c)set current low and high temperature setpoints according to thedetermination whether the fan speed was at or above a predeterminedlevel over an interval of time, wherein the environmental maintenancemodule uses the low and high temperature setpoints in controlling thetemperature of the zone, wherein the fan speed is determined to be belowthe predetermined level over the interval of time, and furthercomprising determining a percentage difference between previous low andhigh temperature setpoints over the period of time, and wherein thecurrent low and high temperature setpoints are set according to applyingthe percentage difference to the previous low and high temperaturesetpoints.
 32. The HVAC system of claim 31, wherein the current lowtemperature setpoint is raised by the percentage difference between theprevious low and high temperature setpoints, and the current hightemperature setpoint is lowered by the percentage difference between theprevious low and high temperature setpoints.
 33. The HVAC system ofclaim 31, wherein the controller is configured to schedule a futureinterval of time to set the fan speed at or above the predeterminedlevel prior to a subsequent operation of steps (a), (b), and (c).